/**
 * @license
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import {html} from '@polymer/polymer/lib/utils/html-tag.js';

export const htmlTemplate = html`
    <style include="shared-styles">
      /* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */
    </style>
    <style include="gr-table-styles">
      /* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */
    </style>
    <style>
      .genericList tr td:last-of-type {
        text-align: left;
      }
      .genericList tr th:last-of-type {
        text-align: left;
      }
      .readOnly {
        text-align: center;
      }
      .changesLink, .name, .repositoryBrowser, .readOnly {
        white-space:nowrap;
      }
    </style>
    <gr-list-view create-new="[[_createNewCapability]]" filter="[[_filter]]" items-per-page="[[_reposPerPage]]" items="[[_repos]]" loading="[[_loading]]" offset="[[_offset]]" on-create-clicked="_handleCreateClicked" path="[[_path]]">
      <table id="list" class="genericList">
        <tbody><tr class="headerRow">
          <th class="name topHeader">Repository Name</th>
          <th class="repositoryBrowser topHeader">Repository Browser</th>
          <th class="changesLink topHeader">Changes</th>
          <th class="topHeader readOnly">Read only</th>
          <th class="description topHeader">Repository Description</th>
        </tr>
        <tr id="loading" class\$="loadingMsg [[computeLoadingClass(_loading)]]">
          <td>Loading...</td>
        </tr>
        </tbody><tbody class\$="[[computeLoadingClass(_loading)]]">
          <template is="dom-repeat" items="[[_shownRepos]]">
            <tr class="table">
              <td class="name">
                <a href\$="[[_computeRepoUrl(item.name)]]">[[item.name]]</a>
              </td>
              <td class="repositoryBrowser">
                <template is="dom-repeat" items="[[_computeWeblink(item)]]" as="link">
                  <a href\$="[[link.url]]" class="webLink" rel="noopener" target="_blank">
                    [[link.name]]
                  </a>
                </template>
              </td>
              <td class="changesLink"><a href\$="[[_computeChangesLink(item.name)]]">view all</a></td>
              <td class="readOnly">[[_readOnly(item)]]</td>
              <td class="description">[[item.description]]</td>
            </tr>
          </template>
        </tbody>
      </table>
    </gr-list-view>
    <gr-overlay id="createOverlay" with-backdrop="">
      <gr-dialog id="createDialog" class="confirmDialog" disabled="[[!_hasNewRepoName]]" confirm-label="Create" on-confirm="_handleCreateRepo" on-cancel="_handleCloseCreate">
        <div class="header" slot="header">
          Create Repository
        </div>
        <div class="main" slot="main">
          <gr-create-repo-dialog has-new-repo-name="{{_hasNewRepoName}}" params="[[params]]" id="createNewModal"></gr-create-repo-dialog>
        </div>
      </gr-dialog>
    </gr-overlay>
    <gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
`;
